package com.hdjd.util;

import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;

/**
 * @author 黄大学问
 * 2021/1/27 13:52
 */

//用户头像上传类
public class FileAccImgUpload {

    public static String fileUpload(MultipartFile file, HttpServletRequest request) throws IOException {
        //获取上传的文件名，然后用 点号 分隔成字符串数组
        String[] fileNames = file.getOriginalFilename().split("\\.");
        //字符串数组最后一个元素就是文件名的后缀名
        String fileSuffix = fileNames[fileNames.length - 1];
        //给上传的文件起个新名称，调用 util 包中的 FileNewName类中的方法，再拼接上文件的后缀名
        String fileNewName = FileNewName.getFileNewName(request) + "." + fileSuffix;

        //获取项目存将要放上传的文件的真实路径，即 项目路径 + file （将上传的文件存放在该路径下）
        String path = request.getServletContext().getRealPath("file"+File.separator+"acc");
        File pathFile = new File(path);
        //在项目真实路径下创建 "file"文件夹
        pathFile.mkdir();

        //创建新的文件对象
        File newFile = new File(path + File.separator + fileNewName);

        //将上传的文件对象另存到新文件对象中
        file.transferTo(newFile);

        return fileNewName;
    }
}
